Designing Distributed Search Structures with Lazy Updates
نویسندگان
چکیده
Very large database systems require distributed storage for expansibility and high throughput, which means that they need distributed search structures for fast and eecient access to the data. In a highly parallel distributed search structure, parts of the index must be replicated to avoid serialization bottlenecks. Designing distributed and replicated search structures is made diicult by the complex interaction of the search structure concurrency control and the replica coherency algorithms. In this paper, we present an approach to maintaining distributed data structures that uses lazy updates, which take advantage of the semantics of the search structure operations to allow for scalable and low-overhead replication. Lazy updates can be used to design distributed search structures that support very high levels of concurrency. The alternatives to lazy update algorithms (eager updates) use synchronization to ensure consistency, while lazy update algorithms avoid blocking. Since lazy updates avoid the use of synchronization, they are much easier to implement than eager update algorithms. We develop a correctness theory for lazy update algorithms, then present lazy update algorithms to maintain a dB ? tree, which is a distributed B + tree that replicates its interior nodes for highly parallel access. We show how the algorithms can be applied to the construction of other distributed search structures.
منابع مشابه
A Distributed , Replicated , Data
Many concurrent dictionary data structures have been proposed, but usually in the context of shared memory multiprocessors. In this paper, we present an algorithm for a concurrent distributed B-tree that can be implemented on message passing computer systems. Our distributed B-tree (the dB-tree) replicates the interior nodes in order to improve parallelism and reduce message passing. The dB-tre...
متن کاملHome-based Release Consistency in Object-based Software DSM Systems
This paper discusses the application of consistency models in objectbased software distributed shared memory (DSM) systems. In particular, we propose a home-based release consistency protocol as applied to our object-based software DSM system Rthreads (Remote threads). Access to shared data is performed in the Rthreads programs by explicit read/write operations. Global data structures are expli...
متن کاملPropagator: A Family of Patterns
PROPAGATOR is a family of patterns for consistently updating objects in a dependency network. The propagator patterns are found in such diverse applications as MAKE, WWW, spreadsheets, GUIs, distributed file systems, distributed databases, workflow systems, and multilevel caches. There are four main patterns: STRICT PROPAGATOR, STRICT PROPAGATOR WITH FAILURE, LAZY PROPAGATOR, and ADAPTIVE PROPA...
متن کاملConfluxDB: Multi-Master Replication for Partitioned Snapshot Isolation Databases
Lazy replication with snapshot isolation (SI) has emerged as a popular choice for distributed databases. However, lazy replication often requires execution of update transactions at one (master) site so that it is relatively easy for a total SI order to be determined for consistent installation of updates in the lazily replicated system. We propose a set of techniques that support update transa...
متن کاملMulti-Master Replication for Snapshot Isolation Databases
Lazy replication with snapshot isolation (SI) has emerged as a popular choice for distributed databases. However, lazy replication requires the execution of update transactions at one (master) site so that it is relatively easy for a total SI order to be determined for consistent installation of updates in the lazily replicated system. We propose a set of techniques that support update transact...
متن کامل